/*
 *
 * Iain5x7
 *
 * created with FontCreator
 * written by F. Maximilian Thiele
 *
 * http://www.apetech.de/fontCreator
 * me@apetech.de
 *
 * File Name           : Iain5x7.h
 * Date                : 28.12.2010
 * Font size in bytes  : 2461
 * Font width          : 5
 * Font height         : 7
 * Font first char     : 32
 * Font last char      : 128
 * Font used chars     : 96
 *
 * The font data are defined as
 *
 * struct _FONT_ {
 *     uint16_t   font_Size_in_Bytes_over_all_included_Size_it_self;
 *     uint8_t    font_Width_in_Pixel_for_fixed_drawing;
 *     uint8_t    font_Height_in_Pixel_for_all_characters;
 *     unit8_t    font_First_Char;
 *     uint8_t    font_Char_Count;
 *
 *     uint8_t    font_Char_Widths[font_Last_Char - font_First_Char +1];
 *                  // for each character the separate width in pixels,
 *                  // characters < 128 have an implicit virtual right empty row
 *
 *     uint8_t    font_data[];
 *                  // bit field of all characters
 */

#ifndef IAIN5X7_H_INCLUDED
#define IAIN5X7_H_INCLUDED

#define IAIN5X7_WIDTH 5
#define IAIN5X7_HEIGHT 7

//#define SUBFONT

GLCDFONTDECL(Iain5x7) = {
    0x09, 0x9D, // size
    0x05, // width
    0x07, // height

#ifdef SUBFONT
    'A',
    63,
#else
    0x20, // first char
    0x60, // char count
#endif

    // char widths
#ifndef SUBFONT
    0x01, 0x01, 0x03, 0x05, 0x05, 0x05, 0x05, 0x01, 0x02, 0x02,
    0x05, 0x03, 0x01, 0x02, 0x01, 0x03, 0x04, 0x02, 0x04, 0x04,
    0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x01, 0x01, 0x03, 0x03,

    0x03, 0x04, 0x05,
#endif
                      0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
    0x04, 0x03, 0x04, 0x05, 0x03, 0x05, 0x05, 0x05, 0x04, 0x05,
    0x04, 0x04, 0x03, 0x04, 0x05, 0x05, 0x05, 0x05, 0x05, 0x02,
    0x03, 0x02, 0x03, 0x03, 0x01, 0x04, 0x04, 0x04, 0x04, 0x04,
    0x04, 0x04, 0x04, 0x01, 0x03, 0x04, 0x01, 0x05, 0x04, 0x04,
    0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x03, 0x05, 0x03, 0x04,
    0x04, 0x03, 0x01, 0x03, 0x05, 0x00,

    // font data
#ifndef SUBFONT
    0x00,                               // 32 <space>
    0xBE,                               // 33 !
    0x0E, 0x00, 0x0E,                   // 34 "
    0x28, 0xFE, 0x28, 0xFE, 0x28,       // 35 #
    0x48, 0x54, 0xFE, 0x54, 0x24,       // 36 $
    0x46, 0x26, 0x10, 0xC8, 0xC4,       // 37 %
    0x6C, 0x92, 0xAA, 0x44, 0xA0,       // 38 &
    0x06,                               // 39 '
    0x3C, 0x42,                         // 40 (
    0x42, 0x3C,                         // 41 )
    0x00, 0x54, 0x38, 0x54, 0x00,       // 42 *
    0x10, 0x38, 0x10,                   // 43 +
    0xC0,                               // 44 ,
    0x10, 0x10,                         // 45 -
    0x40,                               // 46 .
    0xC0, 0x38, 0x06,                   // 47 /
    0x7C, 0x82, 0x82, 0x7C,             // 48 0
    0x04, 0xFE,                         // 49 1
    0xC4, 0xA2, 0x92, 0x8C,             // 50 2
    0x82, 0x92, 0x92, 0x6C,             // 51 3
    0x30, 0x28, 0x24, 0xFE,             // 52 4
    0x4E, 0x92, 0x92, 0x72,             // 53 5
    0x78, 0x94, 0x92, 0x60,             // 54 6
    0x02, 0xE2, 0x12, 0x0E,             // 55 7
    0x6C, 0x92, 0x92, 0x6C,             // 56 8
    0x0C, 0x92, 0x52, 0x3C,             // 57 9
    0x6C,                               // 58 :
    0x6C,                               // 59 ;
    0x10, 0x28, 0x44,                   // 60 <
    0x28, 0x28, 0x28,                   // 61 =
    0x44, 0x28, 0x10,                   // 62 >
    0x04, 0xA2, 0x12, 0x0C,             // 63 ?
    0x64, 0x92, 0xF2, 0x82, 0x7C,       // 64 @
#endif
    0xFC, 0x22, 0x22, 0xFC,             // 65 A
    0xFE, 0x92, 0x92, 0x6C,             // 66 B
    0x7C, 0x82, 0x82, 0x44,             // 67 C
    0xFE, 0x82, 0x82, 0x7C,             // 68 D
    0xFE, 0x92, 0x92, 0x82,             // 69 E
    0xFE, 0x12, 0x12, 0x02,             // 70 F
    0x7C, 0x82, 0xA2, 0x64,             // 71 G
    0xFE, 0x10, 0x10, 0xFE,             // 72 H
    0x82, 0xFE, 0x82,                   // 73 I
    0x40, 0x80, 0x80, 0x7E,             // 74 J
    0xFE, 0x10, 0x28, 0x44, 0x82,       // 75 K
    0xFE, 0x80, 0x80,                   // 76 L
    0xFE, 0x04, 0x08, 0x04, 0xFE,       // 77 M
    0xFE, 0x08, 0x10, 0x20, 0xFE,       // 78 N
    0x7C, 0x82, 0x82, 0x82, 0x7C,       // 79 O
    0xFE, 0x12, 0x12, 0x0C,             // 80 P
    0x7C, 0x82, 0xA2, 0x42, 0xBC,       // 81 Q
    0xFE, 0x32, 0x52, 0x8C,             // 82 R
    0x4C, 0x92, 0x92, 0x64,             // 83 S
    0x02, 0xFE, 0x02,                   // 84 T
    0x7E, 0x80, 0x80, 0x7E,             // 85 U
    0x3E, 0x40, 0x80, 0x40, 0x3E,       // 86 V
    0xFE, 0x40, 0x30, 0x40, 0xFE,       // 87 W
    0xC6, 0x28, 0x10, 0x28, 0xC6,       // 88 X
    0x06, 0x08, 0xF0, 0x08, 0x06,       // 89 Y
    0xC2, 0xA2, 0x92, 0x8A, 0x86,       // 90 Z
    0xFE, 0x82,                         // 91 [
    0x06, 0x38, 0xC0,                   // 92 '\'
    0x82, 0xFE,                         // 93 ]
    0x04, 0x02, 0x04,                   // 94 ^
    0x80, 0x80, 0x80,                   // 95 _
    0x06,                               // 96 `
    0x40, 0xA8, 0xA8, 0x70,             // 97 a
    0x7E, 0x90, 0x88, 0x70,             // 98 b
    0x70, 0x88, 0x88, 0x50,             // 99 c
    0x70, 0x88, 0x90, 0x7E,             // 100 d
    0x70, 0xA8, 0xA8, 0x30,             // 101 e 
    0x10, 0xFC, 0x12, 0x04,             // 102 f
    0x10, 0xA8, 0xA8, 0x78,             // 103 g
    0xFE, 0x10, 0x08, 0xF0,             // 104 h
    0xFA,                               // 105 i
    0x40, 0x80, 0x7A,                   // 106 j
    0xFE, 0x20, 0x50, 0x88,             // 107 k
    0xFE,                               // 108 l
    0xF8, 0x08, 0x30, 0x08, 0xF0,       // 109 m
    0xF8, 0x10, 0x08, 0xF0,             // 110 n
    0x70, 0x88, 0x88, 0x70,             // 111 o
    0xF8, 0x28, 0x28, 0x10,             // 112 p
    0x10, 0x28, 0x28, 0xF8,             // 113 q
    0xF8, 0x10, 0x08, 0x10,             // 114 r
    0x90, 0xA8, 0xA8, 0x48,             // 115 s
    0x08, 0x7E, 0x88, 0x40,             // 116 t
    0x78, 0x80, 0x40, 0xF8,             // 117 u
    0x78, 0x80, 0x78,                   // 118 v
    0x78, 0x80, 0x60, 0x80, 0x78,       // 119 w
    0xD8, 0x20, 0xD8,                   // 120 x
    0x18, 0xA0, 0xA0, 0x78,             // 121 y
    0xC8, 0xA8, 0xA8, 0x98,             // 122 z
    0x10, 0x6C, 0x82,                   // 123 {
    0xEE,                               // 124 |
    0x82, 0x6C, 0x10,                   // 125 }
    0x10, 0x08, 0x10, 0x20, 0x10,       // 126 ~
    // no defintion for 127

};
#endif
